using System.ComponentModel.DataAnnotations;
using System.Data.Entity.ModelConfiguration;

namespace RRHH.Models.Mapping
{
    public class CONCEPTOMap : EntityTypeConfiguration<CONCEPTO>
    {
        public CONCEPTOMap()
        {
            // Primary Key
            this.HasKey(t => t.IDCONCEPTO);

            // Properties
            this.Property(t => t.DESCRIPCION)
                .HasMaxLength(30);

            this.Property(t => t.ALIAS)
                .HasMaxLength(10);

            this.Property(t => t.CODIGOCONCEPTOAF)
                .HasMaxLength(4);

            this.Property(t => t.IDPAIS)
                .HasMaxLength(4);

            this.Property(t => t.ESTADO)
                .IsFixedLength()
                .HasMaxLength(1);

            // Table & Column Mappings
            this.ToTable("CONCEPTO");
            this.Property(t => t.IDCONCEPTO).HasColumnName("IDCONCEPTO");
            this.Property(t => t.DESCRIPCION).HasColumnName("DESCRIPCION");
            this.Property(t => t.ALIAS).HasColumnName("ALIAS");
            this.Property(t => t.CODIGOCONCEPTOAF).HasColumnName("CODIGOCONCEPTOAF");
            this.Property(t => t.IDPAIS).HasColumnName("IDPAIS");
            this.Property(t => t.ESTADO).HasColumnName("ESTADO");
            this.Property(t => t.MONTOMAXIMO).HasColumnName("MONTOMAXIMO");
            this.Property(t => t.IDTIPOCONCEPTO).HasColumnName("IDTIPOCONCEPTO");
            this.Property(t => t.ORDEN).HasColumnName("ORDEN");
        }
    }
}
